System and method for content creation via interactive layers

ABSTRACT

A system and method for content creation via interactive layers is provided. A mutable general object on which to build an artefact is stored. The mutable general object includes a plurality of n-dimensional data units capable of being rendered in a multi-dimensional display. An environment represented by the artefact is displayed. The artefact includes layers that each represent a different characteristic of the environment. Each layer includes a generator and layer parameters. A unique identifier is assigned to each layer. The identifiers for the layers of the artefact are composited and the composited identifiers are stored. Upon accessing the composited identifiers, the artefact is reconfigured for display using the generator and layer parameters from each of the layers.

FIELD

This application relates in general to content creation, and inparticular to a system and method for content creation via interactivelayers.

BACKGROUND

Manually creating deeply detailed content in an n-dimensional space,such as text, environments, visual displays, and other types ofsimulations and models, is extremely difficult and time consuming. Astechnology advances, such content generation can be automated. Forexample, procedural content generation utilizes a set of rules toautomate content generation, including text and computer graphics, suchas 3D models, for visual displays, rather than manually creating suchdata. Utilizing procedural generation is beneficial because content isgenerated much faster utilizing algorithms, than creating the contentmanually.

However, generators used to create data via procedural generation areoften highly specialized in the content to be created. For example, aprocedural content generator that simulates erosion caused by water isgenerally not well versed in generating cloud patterns or a generatorthat simulates text is not able to generate elevated terrain. Therefore,creating content with different types of characteristics can bedifficult and time consuming. Further, the content generated is a singleset of data arid thus, corrections to the content can be difficult andtime consuming because all the data for the content is tied together ina single data set. For example, conventional procedural contentgenerators for text, such as a Twitter bot, generate text content, whichis maintained and stored as a single text document. Utilizing the samegenerator for larger amounts of text content, such as books, generates asingle, large dataset that can be hard to change due to the large amountof text. Similarly, simulated environments, such as a virtual world, isgenerated as a large set of data, which makes modifications difficult,due to finding where the modification should be made and then making themodification.

Accordingly, what is needed is the ability to generate contenteffectively and flexibly via a set of rules. The content should beeasily changeable and have the ability to be quickly reconstructed,while requiring only minimal storage space. Preferably, interactivelayers of content are stacked to form an artifact that represents arealistic environment.

SUMMARY

An artifact, such as an environment for a game or map, is generated bycreating layers of the environment based on parameters front a user andconstraint data from one or more other layers. The environment cansimulate a multi-dimensional realistic environment. Specifically, highfidelity environments are created layer by layer and adjusted to supportsimulations through procedural content generation at each layer. A layergenerator associated with each layer can execute procedural contentgeneration to create layer data, which is represented via manipulateddata units of a mutable generic object. In a different example, theartifact can include textual content, such as a book, which is generatedvia layers of data, each representing a chapter of the book, whereas asan environmental simulation can be generated via layers of data thateach represent different. A framework organizes, manipulates, andmanages the content generation at each layer to create the environment.A DNA modifier, which is a unique string of characters, is assigned toeach layer for easy access of the parameters of a layer generator forthat layer and recreation of that layer.

One embodiment provides a system and method for content creation viainteractive layers. A system and method for content creation viainteractive layers is provided. A mutable general object on which tobuild an artefact is stored The mutable general object includes aplurality of n-dimensional data units capable of being rendered in amulti-dimensional display. An environment represented by the artefact isdisplayed. The artefact includes layers that each represent a differentcharacteristic of the environment. Each layer includes a generator andlayer parameters. A unique identifier is assigned to each layer Theidentifiers for the layers of the artefact are composited and thecomposited identifiers are stored. Upon accessing the compositedidentifiers, the artefact is reconfigured for display using thegenerator and layer parameters from each of the layers.

Still other embodiments of the present invention will become readilyapparent to those skilled in the art from the following detaileddescription, wherein are described embodiments of the invention by wayof illustrating the best mode contemplated for carrying out theinvention. As will be realized, the invention is capable of other anddifferent embodiments and its several details are capable ofmodifications in various obvious respects, all without departing fromthe spirit and foe scope of the present invention. Accordingly, thedrawings and detailed description are to be regarded as illustrative innature and not as restrictive.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing a system for content creation viainteractive layers, in accordance with one embodiment.

FIG. 2 is a flow diagram showing a method for content creation viainteractive layers, in accordance with one embodiment.

FIG. 3 is a flow diagram showing, by way of example, components forcreating an artifact.

FIG. 4 is a block diagram showing, by way of example, an artifactgenerated via the system of FIG. 1 and method of FIG. 2.

FIG. 5 is a flow diagram showing, by way of example, a method forgenerating a data layer of an artifact.

DETAILED DESCRIPTION Glossary:

-   Artifact: content, including one or more of 3D models, images, text,    and realistic environments, generated via layers.-   Layer generator: responsible for executing a single procedural    content generation technique to generate layer data for a particular    characteristic of an artifact.-   Generic canvas object: a mutable generic object manipulated by each    layer generator.-   Layer data or data layer or layer: data regarding changes to the    generic canvas object for one layer of an artifact that represents a    particular characteristic.

Currently, online worlds and environments can be simulated usingprocedural content generation, which utilizes a set of rules to generatethe data, rather than requiring the content to be generated manually.How ever, procedural content generation is generally specific toproducing a specific product as a single data set. Manipulating orrecreating such product can be difficult and time consuming. A frameworkto manage, manipulate, and organize different layers of content, eachusing procedural content generation, to create an artifact, such as 3Dmodels, images, text, and environments, allows for efficient and easychanges to the artifact, and quick recreation of the layers that is notpossible with conventional procedural content generation.

Layers of content are stacked to create an artifact that is easilymanipulated and recreated. FIG. 1 is a block diagram showing a system 10for content creation via interactive layers, in accordance with oneembodiment. Parameters 19 for an artifact are received from a user 11,12 on a local server 14 or a server 22, 25 in the cloud 16 via aninternetwork 13, such as the Internet. In one embodiment. MicrosoftAzure or Amazon Web Services can be used for implementing and managing aframework for content creation via interactive layers.

The servers 14, 22, 25 can each include a general manager 17 and layergenerators 18. A general manager 17 accepts the user parameters andpasses relevant parameters to the layer generators 18. In a tun herembodiment, two or more general managers can be utilized and in oneexample, each manager can be responsible for the different types ofparameters. The general manager 17 can maintain a list of interactivelayers for the artifact and communicate the relevant parameters to thelayer managers 18, which are each associated with a differentinteractive layer on the list. Each layer generator 18 executes a singleprocedural general content technique using the parameters from thegeneral manager and information, such as constraints 21, from one ormore other layer generators 18 to generate layer data for that layer.However, in a further embodiment, multiple general content techniquescan be applied per layer.

Each interactive layer of the artifact represents a particularcharacteristic of the artifact and includes a layer generator and layerdata generated via that layer generator. Hereinafter, the terms “layerdata” and “data layer” and “layer” are used interchangeably with thesame intended meaning, unless otherwise indicated.

The servers can be interconnected or remotely connected to a database15, 23, 24 on which the parameters 19 received from the user are stored.The databases 15, 23, 24 also each store a generic canvas object 20 andlayer constraints 21. The generic canvas object 20 is a mutable genericobject that each layer generator operates on during generation. Inparticular, the generic canvas object includes data units that can bemanipulated for each layer to conform with the parameters from thegeneral manager and the layer constraints from other layers. The layerscan be built on top of one another, such that the layers are stacked toform the artifact, as further described below with reference to FIGS. 3and 4.

Each layer, including the generator for that layer and the layer datagenerated, can be associated with an identifier 26, such as string ofcharacters and stored in at least one of the databases 15,23. 24 forlater access and recreation. Storing each layer of the artifact with thegenerator takes up less storage space and allows that layer to bequickly generated, as further described below with reference to FIG. 3.

The layers are interactive and communicate with one another to form theartifact. The layers are checked to ensure accuracy of the artifact andcompliance of the layers. FIG. 2 is a flow diagram showing a method 30for content creation via interactive layers, in accordance with oneembodiment. Parameters are received (step 31) from a user for creatingan artifact. A general object is accessed (block 32) on which theartifact will be generated Subsequently. the artifact is created bygenerating two or more stacked layers (step 33) by manipulating thegeneral object, as further described below with reference to FIG. 5.During or after generation, each layer of data is checked (step 34)against user defined constraints and the layer constraints, which areencoded in the layer generators associated with other layers, as furtherdescribed below with reference to FIG. 3. The layer constraints can bestored with the general object and obtained via a third party source.For example, a lake layer for a 3D model of the great lakes can includelake size and water level from the National Oceanic and AtmosphericAdministration.

Each layer, including the layer data and layer generator for that layer,are assigned (step 35) a unique identifier, as further described indetail below with respect to FIG. 5. The identifiers IoT the layers canbe composited for the artifact and stored. Storing the parameters ofeach layer via the separate identifiers, which are composited as a DNAmodifier of the artifact; rather than storing the actual layer data aspart of the complete artifact, greatly reduces an amount of storagespace required and provides access to the parameters of the layer formodification or recreation of that layer. Also, the artifact can beeasily recreated (step 37) by accessing (step 36) the compositedidentifier for the artifact and utilizing the generators and the layerdata for each layer to reconfigure the artifact.

Artifacts are content generated via interactive layers of data andprovide realistic visual displays, such as video games, maps, films andmulti-dimensional environment simulations. FIG. 3 is a flow diagramshowing, by way of example, components for creating an artifact. A userprovides a set of parameters for generating the environmentalenvironment, such as dimensions of the environment. Other types ofparameters 41 are possible, including characteristics of theenvironment, such as altitude, temperature, and global moisture value.However, other types of characteristics are possible, such as bears perminute or specific notes for sound artifacts, and language or font fortext artifacts. The parameters are provided to a generation manager 42,which provides relevant parameters to each layer for generation of thelayer data, as well as to a constraint manager 43 and generationvalidator 44. The generation manager maintains a list of the differentlayers, orders the layers, and can set constraints to make sure eachlayer is correctly represented. The generation manager can also providea reference to the generic canvas object, to each of the layergenerators.

Once the information from the generation manager is received, each layergenerator creates a layer of data for a particular characteristic byperforming a layer process 45 during which a single procedural contentgeneration technique is executed using the parameters from thegeneration manager and constraints from other layers to mutate a genericcanvas object 46. The generic canvas object is a mutable generic objecton which each layer generator will operate to generate the layer data.

The layer data for different layers can be generated simultaneously orsequentially. For the elevated map artifact, the data layers can includea flat base terrain, water, terrain type, trees, and roads andbuildings. Other layer data types are possible. When the data layers aregenerated simultaneously, the layer data is data stacked by thegeneration manager and modifications are made to the layers based ontire constraints of other layers. Alternatively, when the processes arestacked, the artifact is generated by building the dam layers on top ofone another, from a bottom to top orientation. For example, the baseterrain can define a bottom layer and the water layer can be built ontop of the base terrain by manipulating the terrain to insert river,ponds, lakes, and other types of water, if applicable for theenvironment. In a further embodiment, a top to bottom orientation isalso possible.

The layers, whether generated simultaneously or sequentially, arestacked to form the artifact. FIG. 4 is a block diagram 60 showing, byway of example, an artifact 66 generated via the system of FIG. 1 andmethod of FIG. 2. Based on the data layers described above with respectto FIG. 4. the data layers 61-65 for an elevated map artifact caninclude a base terrain layer 65, a water layer 64 stacked on top of theterrain layer 65, a terrain type layer 63 that defines a type ofterrain, such as desert, rain forest, or other type of terrain, built ontop of the water layer 64, a tree layer 62 built over the terrain typelayer 63, and a road and building layer 61 built over the tree layer 62.Once stacked, the data layers form the elevated map artifact 66.

Returning to the discussion with respect to FIG. 3, the generationmanager 42 can add, remove, or reorder the different data layers of theartifact, which requires checking of all the other data layers to ensurethat the constraints and parameters of each layer are met. Regardless ofwhether the generation manager makes changes to the data layers aftergeneration, the constraint manager 43 reviews the data layer to ensurethat the constraints and dependencies of other data layers arerespected. The generation validator 44 checks each layer data for eachlayer to ensure the data is valid. A data layer is valid when the datalayer satisfies user defined constraints and layer generators for otherdata layers are not in conflict based on the modifications made by thethat data layer. If the data layers satisfy the reviews by theconstraint manager 43 and the generation validator 44, the generationmanager invokes an export manager 47 to read the generic canvas objectand save the results, which include all the layer data written by thegeneric canvas object and composited as the final artifact. The artifactcan be saved as an image 48, text 49, 3D model 50, or series of tiles(not shown) to a disk 52, database 51, or other type of storage medium.

Generating the artifact via interactive layers allows the artifact to beeasily changed, stored, and recreated. FIG. 5 is a flow diagram showing,by way of example, a method 70 for generating the layers. For each layer(step 71), a layer generator associated with that layer ts accessed(step 72). A layer identifier is defined (step 73) via the layergenerator and is specific to that layer. The layer identifier is astring of characters that encode a random number generator seed valueand other parameters for the layer to use during the generation process.Below is an example of an identifier with a string of characters andvalues that can be used to represent a single layer:

[ . . . “{seed}/{layer generator code}_{parameter id}:{value}”, . . . ],

wherein seed represents a seed value that is utilized by a random numbergenerator included with the layer's generator. A layer generator code isan internal use code associated with the layer generator foridentification and a parameter id is a number associated with a specificparameter relevant to that layer, while value is a value assigned to thelayer's parameter. In the above example, only one parameter is shown;however, the layer can be associated with multiple parameters, which areall represented in the modifier. An example of a parameter specific to alayer can include a percentage of moss at a particular moisture level ona terrain. Other examples are possible. When a user wants to makechanges to a layer, the modifier can be edited for that layer.

The identifiers for each layer can be composited into a modifier havingsingle string of identifiers for the artifact and stored for lateraccess and recreation of the artifact. A first element in the modifierstring can also include the overall artifact parameters and can beseparated from a first modifier by a “|,” as shown below:

[“{scenario generator code}_{scenario parameter id}:{value} . . ._{scenario parameter id}:{value}|{seed} {1st generator code}_{layergenerator parameter id}:{value}”, . . . ]

The scenario generator code is an internal use code associated with theoverall generation process of the artifact. The scenario parameter id isan internal use code associated with a parameter for the artifact andthe value is a value assigned to the artifact parameter. Examples ofparameters tor a sound artifact can include overall sound and fileduration, whereas examples of parameters for an elevated map can includedimension of the map or a maximum elevation of the map. Other parametersare possible. The identifier string can include one or more parametersfor the artifact. The modifiers allow different users to reproduce thespace and characteristics associated with that layer, including aspecific instance of a configuration of the layer, using the same orsimilar generic canvas object, as well as reducing an amount of datastorage required.

User parameters, and parameters and constraints from one or more priordata layers are received (step 74) by the layer generator for creatingthe layer data. Based on the parameters and constraints from at leastthe prior level, a determination is made (step 75) as to whether theprior data layer is mutable. If so, the data units of the generic canvasobject are manipulated (step 76), such as by adding data units to theprior data layer, removing data units from the prior data layer, andforming assemblies of data units for the current data layer. Other typesof data unit manipulations are possible. For example, a water layerformed on top of a base terrain layer may require cutouts within theterrain layer, such as by removal of data units, to create depth of aparticular body of water.

However, if the prior data layer is not mutable (step 75), the dataunits associated with the prior data layer cannot be manipulated, suchas by removal or changing data unit types. However, data units can beadded (block 77) on top of the prior data layer to form the current datalayer for the layer. For example, a cold weather layer, such as ice andsnow, being formed on top of an elevated terrain layer, such asmountains and hills, may determine that the elevated terrain layercannot be mutated and thus, the ice and snow is merely added, by addingdata units on top of the elevated terrain data units. The process (steps72-77) are performed for generating the data layer of each layer andupon generating the last, or top data layer, of the artifact thegeneration process ends (block 78). The manipulation of the data unitscan be performed by the layer generator, which is trained to utilize aset of rules that recognizes characteristics of that layer. In oneembodiment, the characteristics can represent a type of terrain orobject, such as grass, water, mountains, trees, roads, people,buildings, or other types of terrain and objects. For example, a waterlayer can be associated with a layer generator that is trained toidentify areas of terrain for correct placement of bodies of water. Forexample, a waterfall would not flow from low terrain to high terrain anda sea would not be placed at high terrain. Training data for the waterlayer generator can include maps and other related data.

Sometimes, one or more layer generators must negotiate with one another,such as when changes by one layer generator to layer data of a differentlayer generator requires approval or consideration. For example, if aroad layer generator is placing roads and must traverse a river or otherbody of water, the road layer generator should negotiate with the waterlayer generator and a lower level terrain layer to determine how theroad should be placed since a road cannot be built on water. During thenegotiation, the solution agreed upon by the water, road, and terrainlayer generators may be digging into the terrain and water layers tobuild a culvert over which the road can be placed.

A specific example of generating an environment artifact can use NixelWorlds as the generic canvas object, which includes and manages voxels,as well as assemblies of voxels. Nixel Worlds has a 3D array thatincludes voxels and empty positions, and has methods for adding,removing, and editing the voxels. Other functions for counting andaccessing specific voxels and their positions can also be included inNixel Worlds. Similarly, functions for adding, removing, editing,counting, and accessing specific assemblies of voxels are alsoavailable.

A voxel is an atomic unit used in the layer generation process that isstored and managed by the Nixel World. Each voxel has a position, size,type, and value, and can be extended to have more or less attributes.Thus, Nixel Worlds can be capable of n dimension procedural contentgeneration, where n is a number of voxel attributes. In this example,there can be four basic voxel types, including water, object, assembly,and terrain. However; more or less types of voxels are possible. Eachtype of voxel is associated with unique attributes and can expand thespace of the artifact generated. In one embodiment water and terrainvoxel types have “value” and “type” attributes. In one example, thevalue attribute can be moisture level with respect to how close aterrain voxel is to a water source and the type attribute can include atype of the terrain voxel, such as rainforest, desert, field, or otherterrain type. Assembly type voxels are associated with a reference to anassembly of which the assembly voxel is included. For example, anassembly type voxel can be part of a building assembly and can representa brick, while other assembly type voxels in the building may representa door or window. Further, object type voxels can be extended torepresent higher complexity single voxel entities, such as an individualperforming tasks within a layer.

Assemblies include two or more assembly voxels that represent objectslarger than a single voxel position can handle. For example, an assemblycould represent a cloud, tree, or house. Other assembly representationtypes are possible. A cloud voxel assembly can be associated with awater content attribute, a tree voxel can be associated with anattribute that represents a number of applies growing on the tree, and ahouse can be associated with an attribute that identifies an owner ofthe house.

The voxels and voxel assemblies are manipulated during processing ofeach layer. Each layer generator has a reference to the Nixel World thatallows a generator to manipulate the voxels and reason about a currentworld state that can inform a procedural content generation processduring its generation. Each layer generator includes a priorityattribute that dictates where and when in the scenario generationprocess of the artifact, that generator is executed to create theassociated layer data.

In this example, one of the implemented layer generators is a biomelayer generator that is responsible for assigning terrain types, such asforest, desert, or seabed, as well as other types, by utilizing aWhittaker diagram that is based on elevation generated by a terrainlayer generator, a user defined global moisture, ocean level, and globaltemperature, as well as Simplex Noise. The terrain voxels that representhigh elevations, high moisture, and low temperature values are assigneda “snow” type, while terrain voxels at ocean level with high moistureand high temperature values are assigned a “rainforest” type. Otherlayer generators, such as a tree generator, can reference the valuesfrom the terrain voxels through an associated reference to Nixel Worldto inform their own generation process.

The layers in Nixel can operate and negotiate in a shared n-dimensionalconfiguration space, where each new layer added, following itsgenerative algorithm, is interacting with other layers in the sameglobal configuration space. For instance, if a surface water layer forrivets, lakes, and other bodies of water were to be placed on a terrainlayer, the surface water layer generator would need to remove surfacefeatures to accommodate the water representing a river that carves out ariver bed.

If a layer is mutable, then other layers may alter that layer freely, inaccordance with parameters of the mutable layer. However, if the layeris immutable, the layer cannot be changed and other layers must treatthe immutability of the layer as a constraint. In one embodiment,negotiations can occur to maintain some local or global constraint thataffects layers, such that layer adjustments may need to be made bycoordinating generative algorithms to maintain constraints. A constraintmanager can help facilitation the negotiations between layerinteractions.

Once completed, results of the environment generated are packed in aseries of PNG height map images with three channels of colors encoding avoxel's elevation, type, and value However, other formats of the resultsand other channels of colors are possible for coding the voxel'sdifferent characteristics. Voxel data can be read from the Nixel World,while the generation manager extracts more complex information, such asmultiple positions, descriptions, and assemblies of the voxels, andsaves the information within a set of human readable JSON files.

In another example, a Mars-like environment can be generated forsimulating that particular hardware and software will work on theterrain. The environment simulation can include a terrain layergenerator utilizing Simplex Noise and Voronoi tessellations to generatea basic landscape with mountains and hills that rise in elevation thecloser the elevated areas are to a Voronoi cell center. The basiclandscape can be defined as a base terrain data layer of the artifact.Another layer generator can cover parts of terrain in ice using aSimplex Noise texture and the elevations generated by the previousterrain layer generator. The ice data layer sits directly atop theterrain data layer using Simplex Noise, which can generate patches ofice for that layer. A further layer generator, useful for simulation orgames, can be responsible for assigning slices of land for anomalies inwhich a Mars Rover might have interest for examining mineral deposits tocollect and scan. The voxels in the simulation data layer can definepossible sensor readings and add randomized physical elements Finally, alast layer generator can be responsible for laying out potential pathsacross the generated terrain data layer that a rover should avoidtravelling through, such as patches of ice: as well as steep slopes. Theaggregate of all the generated layers for the Mars-like artifactprovides useful, environmentally embedded information for artificialintelligence planning. Thus, the resulting artifact comprised of thedifferent data layers, is a useful stack of simulation data for a Marsrover simulator or game.

In a further embodiment, content creation via interactive layers canalso be utilized to generate text. For example, a layer generator can bea text generator and the data unit associated with a generic object canrepresent letters for an artifact, which can include a text collection.Also, the assembly of data units can represent a collection of lettersin a word. During textual procedural content generation, the genericcanvas object can manage a string, with helper functions for accessingand changing specific characters and words. For example, an instructioncan include “access the character in the fifth index of the string.” Thetextual layer generator can perform a Caesar shift on the string storedin the Generic Canvas Object and the generation manager can add a“to-uppercase” layer process after the Caesar shift layer process.Finally, the export manager can save the string to a text file.

While the invention has been particularly shown and described asreferenced to the embodiments thereof, those skilled in the art willunderstand that the foregoing and other changes in form and detail maybe made therein without departing front the spirit and scope of theinvention.

What is claimed is:
 1. A system for content creation via interactivelayers, comprising: a database to store a mutable general object onwhich to build an artefact, wherein the mutable general object comprisesa plurality of n-dimensional data units capable of being rendered in amulti-dimensional display: at least one server comprising a centralprocessing unit, memory, an input port to receive the mutable generalobject from the database, and an output port, wherein the centralprocessing unit is configured to; display an environment represented bythe artefact, wherein the artefact comprises layers that each representa different characteristic of the environment and includes a generatorand layer parameters; assign to each layer, a unique identifier,composite the identifiers for the layers of the artefact; store thecomposited identifiers; access the composited identifiers; andreconfigure the artefact for display using the generator and layerparameters from each of the layers accessed via the compositedidentifiers.
 2. A system according to claim 1, wherein the centralprocessing unit regenerates each layer for the reconfigured artefact byusing procedural content generation to manipulate data units in themutable general object.
 3. A system according to claim 2, whereinmanipulation of the data units can be performed by at least onegenerator, which is trained to utilize a set of rules that recognizesthe characteristics of that layer.
 4. A system according to claim 2,wherein the layers are regenerated simultaneously or sequentially.
 5. Asystem according to claim 4, wherein the central processing unit stacksthe layers when the layers are regenerated simultaneously and modifiesone or more of the stacked layers based on constraints of at least oneother layer.
 6. A system according to claim 4, wherein the centralprocessing unit builds the layers on lop of one another when the layersare generated sequentially.
 7. A system according to claim 1, whereinthe composited identifiers for the layers comprise a modifier withsingle string of identifiers for the artifact.
 8. A system according toclaim 1, wherein an aggregate of all the layers tor the environmentprovides embedded information for artificial intelligence planning.
 9. Amethod for content creation via interactive layers, comprising; storinga mutable general object on which to build an artefact, wherein themutable general object comprises a plurality of n-dimensional data unitscapable of being rendered in a multi-dimensional display; displaying anenvironment represented by the artefact, wherein the artefact compriseslayers that each represent a different characteristic of the environmentand includes a generator and layer parameters; assigning to each layer,a unique identifier; compositing the identifiers for the layers of theartefact; storing the composited identifiers; accessing the compositedidentifiers; and reconfiguring the artefact for display using thegenerator and layer parameters from each of the layers accessed via thecomposited identifiers.
 10. A method according to claim 9, furthercomprising: regenerating each layer tor the reconfigured artefact byusing procedural content generation to manipulate data units in themutable general object.
 11. A method according to claim 10, whereinmanipulation of the data units can be performed by at least onegenerator, which is trained to utilize a set of rules that recognizesthe characteristics of that layer.
 12. A method according to claim 10,wherein the layers are regenerated simultaneously or sequentially.
 13. Amethod according to claim 12, further comprising: stacking the layerswhen the layers are regenerated simultaneously; and modifying one ormore of the stacked layers based on constraints of at least one otherlayer.
 14. A method according to claim 12, further comprising: buildingthe layers on top of one another when the layers are generatedsequentially.
 15. A method according to claim 9, wherein the compositedidentifiers for the layers comprise a modifier with single string ofidentifiers for the artifact.
 16. A method according to claim 9, whereinan aggregate of all the layers for the environment provides embeddedinformation for artificial intelligence planning.
 17. A method forcontent creation via interactive layers, comprising: receivingparameters for creating an artefact representing an environment;generating layers for the artefact, wherein each layer of the artefactrepresents a different feature of the artefact based on differentarrangements of the data units of the mutable general object associatedwith the artefact, each layer comprising: obtaining for one of thelayers of the artefact, data from at least one of the other layerslocated prior to the one layer, wherein the data comprises informationabout an arrangement of the data units for the prior layers; andcreating the layer by using procedural content generation to mutate thedata units in the mutable general object based on the data from one ormore of the prior layers and the received parameters; and compiling thecreated layers into the artefact via the mutable general object, whereinthe compiled layers are rendered as the environment in anmulti-dimensional display.
 18. A method according to claim 17, furthercomprising: assigning a unique identifier to each of the layers;compositing for the artefact the identifiers for the layers; and storingthe composited identifiers.
 19. A method according to claim 17, furthercomprising: access the composited identifiers; and reconfigure theartefact for display.
 20. A method according to claim 17, wherein theartefact is reconfigured using a generator and lava parameters for eachlayer.